package cn.xny.basic.listener;


import cn.xny.system.service.PermissionService;
import org.springframework.beans.factory.annotation.Autowired;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;



@WebListener
public class PermissionScanInitListener implements ServletContextListener {
      @Autowired
        private PermissionService permissionService;
    @Override
    public void contextInitialized(ServletContextEvent sce) {
        //这里面的业务随着接口的变多，可能执行时间会非常久，影响性能。影响主线程的启动
        new Thread(new Runnable() {//不用主线程去执行，用一个新的线程去执行
            @Override
            public void run() {
                //可以在这里扫描我们自定义的注解@PreAuthorize，然后将信息存储到t_permission表
                //这样就无需手动录入信息到权限t_permission表了

                permissionService.scanPermission();

            }
        }).start();
    }


}